Event (k8s)
gpt-5.icon
クラスタ内で発生した出来事(状態変化・エラー・警告など)を記録するための仕組み。
主に デバッグ・運用監視 の補助情報として使われる。
1. Eventとは何か
Pod / Node / Deployment などの オブジェクトに紐づく時系列ログ
「何が起きたか」「いつ起きたか」「なぜ起きたか」を人間向けに要約
状態(Status)とは別。Statusは現在の状態、Eventは過去の出来事
例:
Pod がスケジューリングされた
Image Pull に失敗した
コンテナが OOMKilled された
2. Eventの主な用途
障害調査(なぜPodが起動しないのか)
デプロイ失敗の原因特定
クラスタ運用時の一次情報源
※ 監視・アラートの主役ではなく、補助情報として使うのが前提
3. Eventの構造
Eventは内部的には以下のような情報を持つ。
involvedObject: 対象リソース(Pod, Nodeなど)
reason: 短い原因コード(FailedScheduling, BackOff など)
message: 人間向け説明
type:
Normal
Warning
count: 同一Eventが何回起きたか
firstTimestamp / lastTimestamp
4. 代表的なEvent例
Pod起動関連
Scheduled
Pulling
Pulled
Created
Started
よくあるWarning
FailedScheduling(リソース不足など)
ImagePullBackOff
CrashLoopBackOff
OOMKilled
5. Eventの確認方法
特定リソースに紐づくEvent
code:bash
kubectl describe pod <pod-name>
※ describe の下部に Event が出る
6. Eventの保存期間と注意点
短命(デフォルトで数時間〜1日程度)
etcd に保存され、古いものから削除される
永続ログではない
→ 長期分析や監査用途には 別途ログ基盤へ転送が必要
(例: Event Exporter + Prometheus / Loki / Datadog)
7. Eventとログ・メトリクスの違い
table:_
種類 役割
Event 何が起きたか(要約・人間向け)
Log 何が内部で起きたか(詳細)
Metric どの程度起きているか(数値)